package com.xbongbong.saas.service;

import com.xbongbong.paas.pojo.dto.MsgGetHtmlDTO;
import com.xbongbong.paas.pojo.dto.MsgGetReceiptStatusDTO;
import com.xbongbong.paas.pojo.dto.MsgHaveReadDTO;
import com.xbongbong.paas.pojo.dto.MsgReceiptSaveDTO;
import com.xbongbong.paas.pojo.dto.MsgSurveyHasAnswerDTO;
import com.xbongbong.paas.pojo.dto.MsgSurveySaveDTO;
import com.xbongbong.paas.pojo.vo.MsgGetHtmlVO;
import com.xbongbong.paas.pojo.vo.MsgGetReceiptStatusVO;
import com.xbongbong.paas.pojo.vo.MsgHaveReadVO;
import com.xbongbong.paas.pojo.vo.MsgReceiptSaveVO;
import com.xbongbong.paas.pojo.vo.MsgSurveyHasAnswerVO;
import com.xbongbong.paas.pojo.vo.MsgSurveySaveVO;
import com.xbongbong.paas.toolbox.exception.XbbException;

/**
 * admin中的消息操作
 * 创建时间 2019/4/16 9:21 AM
 * 修改时间 2019/4/16 9:21 AM
 * @author chy
 * @since v1.0
 * @version v1.0
 */
public interface AdminMsgService {
    /**
     * 回执信息保存
     * @param msgReceiptSaveDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 9:56 AM
     * 修改时间 2019/4/16 9:56 AM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgReceiptSaveVO receiptSave(MsgReceiptSaveDTO msgReceiptSaveDTO) throws XbbException;

    /**
     * 标记已读
     * @param msgHaveReadDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 9:55 AM
     * 修改时间 2019/4/16 9:55 AM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgHaveReadVO haveRead(MsgHaveReadDTO msgHaveReadDTO) throws XbbException;

    /**
     * 获取页面信息
     * @param msgGetHtmlDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 10:08 AM
     * 修改时间 2019/4/16 10:08 AM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgGetHtmlVO getHtml(MsgGetHtmlDTO msgGetHtmlDTO) throws XbbException;

    /**
     * 获取回执状态
     * @param msgGetReceiptStatusDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 11:32 AM
     * 修改时间 2019/4/16 11:32 AM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgGetReceiptStatusVO getReceiptStatus(MsgGetReceiptStatusDTO msgGetReceiptStatusDTO) throws XbbException;

    /**
     * 判断是否已经答过此问卷
     * @param msgSurveyHasAnswerDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 2:09 PM
     * 修改时间 2019/4/16 2:09 PM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgSurveyHasAnswerVO hasAnswer(MsgSurveyHasAnswerDTO msgSurveyHasAnswerDTO) throws XbbException;

    /**
     * 用户保存问卷
     * @param msgSurveySaveDTO
     * @return
     * @throws XbbException
     * 创建时间 2019/4/16 2:13 PM
     * 修改时间 2019/4/16 2:13 PM
     * @author chy
     * @since v1.0
     * @version v1.0
     */
    MsgSurveySaveVO surveySave(MsgSurveySaveDTO msgSurveySaveDTO) throws XbbException;
}
